<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .box {
            width: 800px;
            height: 500px;
            background-color: skyblue;

        }

        .box {
            /* 父元素设置flex，控制子元素的布局 */
            /* 父元素设置flex，子元素的float，clear，vertical-aligh失效 */
            display: flex;
            /* 主轴方向 */
            /* 横着排列 */
            flex-direction: row;
            /* 竖着排列 */
            flex-direction: column;

            justify-content: flex-start;
            justify-content: flex-end;
            justify-content: center;
            justify-content: space-around;
            justify-content: space-between;

            /* 是否换行，默认不换。子元素会收缩 */
            flex-wrap: wrap;

            /* 控制子元素在侧轴方向上的位置、默认向上、单行的情况 */
            align-items: center;
            align-items: flex-start;
            align-items: flex-end;
            /* 拉伸的意思，如果子元素没设置高度，那就会拉伸，设置了就以设置的为准 */
            align-items: stretch;


            /* 控制多行元素，在侧轴方向上的排列方式。可以把多行看成是一个整体了  */
            align-content: center;
            align-content: flex-end;
            align-content: flex-start;
            align-content: space-around;
            align-content: space-between;
            align-content: stretch;


            /* 复合属性-flex-direction 和flex-wrap的复合 */
            flex-flow: row nowrap;
        }

        .box div {
            width: 150px;
            height: 100px;
            background-color: red;
            color: #fff;
            margin: 10px;
        }

        .box div:first-child {
            /* 子项目身上常用的属性 */
            width: 180px;
            height: 180px;
        }

        .box div:nth-child(2) {
            /* 占用剩余空间，两边固定，中间跟着变  */
            /* 参与分配的剩余空间 */
            flex: 1;
            height: 180px;
            background-color: #ff8745;

            /* 设置自己的对齐方式 */
            /* 自己的优先级要比父级指定的高 */
            align-self: flex-end;

            /* 设置元素的顺序，数字越小越靠前,默认0 */
            order: -1;
        }

        .box div:last-child {
            /* 子项目身上常用的属性 */
            width: 200px;
            height: 180px;
        }
    </style>
</head>

<body>


    <div class="box">
        <div>111</div>
        <div>222</div>
        <div>333</div>
        <div>444</div>
        <div>555</div>
        <div>666</div>
    </div>
</body>

</html>